package cn.edu.scau.cmi.ema.service;

import cn.edu.scau.cmi.ema.base.CmiPagination;
import cn.edu.scau.cmi.ema.domain.Event;

import java.util.List;
import java.util.Map;
import java.util.Set;


public interface EventService {

	public Event saveEvent(Event event);

	public Set<Event> loadEvents();

	public Set<Event> loadReferenceEvents(Set<Event> events);

	public Set<Event> loadEventsByIdSet(Set<Integer> eventsId);

	public Map<String, ?> loadEventObjectReferencedSet(Event event);

	public Map<String, ?> loadEventClassReferencedSet(Event event);

	public void deleteEvent(Event event);

	public void deleteEvents(Set<Integer> deleteEventsId);

	public List<Event> findAllEvents(Integer startResult, Integer maxRows);

	public Event findEventByPrimaryKey(Integer id);

	public Integer countEvents();

	public Integer countEvents(CmiPagination page);

	public Integer countEventsByName(String queryName);

	public Integer countEventsByDetachedCriteria(CmiPagination page);

}
